/**
 * 上下文参数：
 * @param {Function} uploadFunction 上传文件时的方法
 * @param {Function} fileHashFunction 上传文件前获取文件Hash方法
 * @param {Array} authCodeList v-permission指令的权限列表
 * @param {Object} axiosInstance Axios实例
 * @param {Array} holidayCalendar 节假日
 * @param {String} uploadUrl 文件上传url，主要用在image-upload组件和upload组件
 * @param {Object} message 消息对象
 * @param {Function} message.alert 成功提示消息
 * @param {Function} message.confirm 确认提示消息
 */

const extentContextSymbol = btoa('COMPONENTS_EXTENT_CONTEXT').replaceAll('=', '');
window[extentContextSymbol] = window[extentContextSymbol] || {};
export default function extentContext(option) {
  if (option) {
    Object.assign(window[extentContextSymbol], option);
  }
  return window[extentContextSymbol];
}
